#pragma once

#include <vector>

class Suit;

class Manage
{
public:
	~Manage(void);

	static Manage& getInstance();

	bool prepare();
	bool run(void* param);

	bool isNeedRun()
	{
		return is_need_run_;
	}

	void goRun(bool need_run = true)
	{
		is_need_run_ = need_run;
	}

	bool unPrepare();

	bool addSuit(Suit* suit);
	bool delSuit(int index);

	std::vector<Suit *> getSuits();

private:
	std::vector<Suit *> m_suits;

	bool is_need_run_;

private:
	Manage(void);
};
